package com.itheima.reggie.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.itheima.reggie.common.PageParams;
import com.itheima.reggie.dto.SetmealDto;
import com.itheima.reggie.entity.Setmeal;
import com.itheima.reggie.mapper.SetmealMapper;
import org.springframework.beans.factory.annotation.Autowired;

import java.util.List;

public interface SetmealService {
    /**
     * 根据id查询有多小条数
     * @param categoryId
     * @return
     */
    int selectByCategoryId(Long categoryId);

    /**
     * 保存套餐，及套餐关联的菜品
     */
    void saveWithDish(SetmealDto setmealDto);

    /**
     * 分页查询dish,及套餐名称
     */
    Page findPage(PageParams pageParams);

    /**
     * 删除套餐信息，及其关联的菜品，
     *
     */
    int deleteSetmeal(List<Long> ids);

    /**
     * 根据分类id 和status 查询套餐数据
     * @param setmeal
     * @return
     */

    List<Setmeal> list(Setmeal setmeal);

    /**
     * 根据SetmealDto修改Setmeal 和StemealDish
     * @param setmealDto
     * @return
     */

    int updatSetmeal(SetmealDto setmealDto);

    /**
     * 修改起售状态
     * @param ids  修改id
     * @param status  要修改成的状态值
     * @return
     */
    int updatSetmealStatus(List<Long> ids, Integer status);

    /**
     * 通过套餐id查询套餐及套餐的菜品数
     * @param id
     * @return
     */
    SetmealDto fiandSetmealDto(Long id);

    /**
     * 根据套餐id获取套餐
     * @param id
     * @return
     */

    Setmeal findSetmealById(Long id);
}
